Skip to content

Fix Cua Driver release discovery across feed pages - #347

Merged
spencerbull merged 2 commits into
omacom:add-cua-driver-binfrom
f-trycua:fix/cua-driver-release-pagination
Sep 9, 2026
Merged

Fix Cua Driver release discovery across feed pages#347
spencerbull merged 2 commits into
omacom:add-cua-driver-binfrom
f-trycua:fix/cua-driver-release-pagination

Conversation

@f-trycua

@f-trycua f-trycua commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

The Cua monorepo publishes several components in one release feed, so the first 100 releases can contain no eligible Driver release. Scan the paginated feed before selecting the highest stable-shaped Driver version that clears the existing 24-hour quarantine, with a 100-page bound and failure on incomplete scans or malformed responses. Feed release pages to jq through stdin so large asset manifests do not exceed Linux's argument-size limit.

Run deterministic hook fixtures through the existing bin/sync-upstream self-test entry point with native pacman vercmp. The fixtures cover later-page discovery, large responses, version ordering, quarantine, dates, checksums and API failures. A temporary pinned PKGBUILD keeps the fixtures independent of routine package updates.

This PR targets add-cua-driver-bin and lands into #306 first. It preserves package version 0.23.2, both architectures and the pacman installer stub. Keep that workaround until a Driver release containing trycua/cua#3636 reaches this package through its normal update path. No separate issue is linked.

🤖 Generated by GPT-6 in T3 Code. Reviewed by Codex GPT-6 XHigh.

Build on omacom#306 without replacing its package or updater workaround. Exhaust the component feed before selecting a release and cover quarantine, version ordering, invalid input, and transport failures with offline fixtures.
@f-trycua
f-trycua marked this pull request as ready for review September 9, 2026 21:56
Feed GitHub release pages to jq through stdin so real pages do not exceed Linux argument limits. Generate an oversized fixture response in the curl mock, and run hook fixtures against a temporary pinned PKGBUILD so routine package updates do not break repository self-tests.

Co-Authored-By: Codex GPT-6 XHigh <noreply@openai.com>
@spencerbull

Copy link
Copy Markdown
Contributor

Reviewed 2b2e880eed841266c4ae5d915386d415c3259f78 against #306 and pushed the fixes as 9779715f163897e0b1ef0d14ceefaba896fc7c8b. Both defects belonged in this PR:

  • The release-page aggregation passed the whole GitHub response as one jq --argjson argument. The live feed reproduced Argument list too long on the Omabot worker. Pages now travel through stdin, and a generated oversized response exercises that path.
  • The fixtures used the real PKGBUILD with fixed release versions. Changing the package to 0.24.0 caused 12 assertions to fail. Fixtures now run against their own temporary pinned PKGBUILD, so normal package updates do not break CI.

On a disposable credential-free Omabot worker, all three repository self-tests passed with native pacman vercmp, including all 39 Driver assertions. Deliberately restoring the argument-size bug failed the new test. Version-bump probes passed after isolation; the full live sync advanced a separate copy from 0.23.2 to quarantined 0.24.0 with both architecture checksums, and its self-test passed afterward.

The unchanged 0.23.2 x86_64 package built through bin/build, installed through pacman, and passed pacman -Qkk with 21 files and no alterations. CLI/version, cursor-theme helper, session-aware doctor and a standard-permission daemon call worked. The actual update --apply path reached the packaged refusal stub, exited 1 with pacman guidance, created no user-local installation and left package integrity clean. Native ARM execution and GUI input were not tested; the optional Hyprland plugin is separate in #346 and is not qualified by this review.

Codex GPT-6 XHigh supplied the large-page failure mechanism and reviewed the final two-file fix without further findings. The named T3 review shares a readable filesystem, so process-level independence is not guaranteed; findings were verified directly on the worker.

Final-head Arch self-tests pass. Ready for a maintainer to merge #347 into add-cua-driver-bin first, followed by #306. No merge performed.

🤖 Generated by GPT-6 in T3 Code. Reviewed by Codex GPT-6 XHigh.

@spencerbull
spencerbull merged commit 623a621 into omacom:add-cua-driver-bin Sep 9, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants